import { TimeCode } from './timecode';
import { Rate } from './rate';
import { XmlObject, XmlAttribute, XmlChildElement, XmlElement } from "xml-core";
import { Media } from './media';
import { Marker } from './marker';
@XmlElement({ localName: 'sequence'})
export class Sequence extends XmlObject {

    @XmlAttribute({ localName: 'id' })
    public _id: string;

    @XmlAttribute({ localName: 'in' })
    public _in: number;

    @XmlAttribute({ localName: 'out' })
    public _out: number;

    // 立体声相关
    @XmlAttribute({ localName: 'explodedTracks' })
    public _explodedTracks: boolean;

    @XmlChildElement()
    public uuid: string;

    @XmlChildElement()
    public duration: string;

    @XmlChildElement()
    public rate: Rate

    @XmlChildElement()
    public name: string;

    @XmlChildElement()
    public media: Media
   
    @XmlChildElement()
    public masterclipid: string;

    @XmlChildElement()
    public ismasterclip: boolean;

    @XmlChildElement()
    public timecode: TimeCode;

    @XmlChildElement({ noRoot: true })
    public marker: Marker[];

}